#include "YGInput.h"
#include "YGSources.h"
#include "YGLog.h"

#if (YG_OS_TYPE == YG_OS_TYPE_WINDOWSMOBILE)

	#include "WM6\YGInputWM6.h"

#elif (YG_OS_TYPE == YG_OS_TYPE_ANDROID)

	#include "Android\YGInputAndroid.h"

#endif

namespace YoghurtGum
{

	Keyboard* Keyboard::s_Instance = NULL;

#if (YG_OS_TYPE == YG_OS_TYPE_WINDOWSMOBILE)

	Keyboard& Keyboard::Get()
	{
		if (!s_Instance) { s_Instance = new KeyboardWM6(); }
		return *s_Instance;
	}

#elif (YG_OS_TYPE == YG_OS_TYPE_ANDROID)

	Keyboard& Keyboard::Get()
	{
		if (!s_Instance) { s_Instance = new KeyboardAndroid(); }
		return *s_Instance;
	}

#endif

	Keyboard::Keyboard()
	{

	}

	Keyboard::~Keyboard()
	{

	}

	TouchScreen* TouchScreen::s_Instance = NULL;

#if (YG_OS_TYPE == YG_OS_TYPE_WINDOWSMOBILE)

	TouchScreen& TouchScreen::Get()
	{
		if (!s_Instance) { s_Instance = new TouchScreenWM6(); }
		return *s_Instance;
	}

#elif (YG_OS_TYPE == YG_OS_TYPE_ANDROID)

	TouchScreen& TouchScreen::Get()
	{
		if (!s_Instance) { s_Instance = new TouchScreenAndroid(); }
		return *s_Instance;
	}

#endif

	TouchScreen::TouchScreen()
	{

	}

	TouchScreen::~TouchScreen()
	{

	}

}; // namespace YoghurtGum